﻿using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using UnityEngine;

namespace PP.PPPoker
{
    public class D
    {
        // 前后端数值比例
        public const int SERVER_CLIENT_RATIO = 100;
        public const int MAX_BASE_POOL = 10000000; // 保底奖池最大值

        // TIME
        public const int SECONDS_OF_MINUTE = 60;
        public const int SECONDS_OF_HOUR = 60 * 60;
        public const int SECONDS_OF_DAY = 60 * 60 * 24;
        public const int SECONDS_OF_WEEK = 60 * 60 * 24 * 7;
        public static readonly int[][] DAYS_OF_MONTH = new int[][]
        {
            new int[] {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
            new int[] {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
        };

        // Platform 
        // 自定义的发包类型 1 安卓中文 2安卓英文 3ios中文 4 ios英文
        public const int PLATFORM_ANDROID_CN = 1;
        public const int PLATFORM_ANDROID_EN = 2;
        public const int PLATFORM_IOS_CN = 3;
        public const int PLATFORM_IOS_EN = 4;
        public const int PLATFORM_TYPE = 1;

        // UI
        public static readonly Color32 COLOR_GREEN_PROFIT = new Color32(41, 204, 150, 255);
        public static readonly Color32 COLOR_RED_PROFIT = new Color32(255, 102, 102, 255);
        public static readonly Color32 COLOR_GREY_WHITE = new Color32(229, 229, 229, 255);
        public static readonly Color32 COLOR_SYSTEM = new Color32(255, 234, 127, 255);
        public static readonly Color32 COLOR_WHITE = new Color32(255, 255, 255, 255);
        public static readonly Color32 COLOR_GREYWHITE_DIALOG = new Color32(156, 164, 180, 255);
        public static readonly Color32 COLOR_DISABLE = new Color32(127, 127, 127, 255);
        public static readonly Color32 COLOR_NORMAL_STR = new Color32(122, 122, 153, 255);
        public static readonly Color32 COLOR_CHIPS_YELLOW = new Color32(254, 217, 134, 255); // 籌碼的黃色
        public static readonly Color32 COLOR_FONT_DISCLAIMER = new Color32(81, 97, 118, 255); // 免責字體顏色

        public static IReadOnlyDictionary<int, string> CARD_NUM_2_STRING { get; } = new Dictionary<int, string>
        {
            {2, "2"},
            {3, "3"},
            {4, "4"},
            {5, "5"},
            {6, "6"},
            {7, "7"},
            {8, "8"},
            {9, "9"},
            {10, "10"},
            {11, "j"},
            {12, "q"},
            {13, "k"},
            {14, "a"}
        };

        public static IReadOnlyDictionary<string, int> CARD_STRING_2_NUM { get; } = new Dictionary<string, int>
        {
            {"2", 2},
            {"3", 3},
            {"4", 4},
            {"5", 5},
            {"6", 6},
            {"7", 7},
            {"8", 8},
            {"9", 9},
            {"10", 10},
            {"j", 11},
            {"q", 12},
            {"k", 13},
            {"a", 14}
        };
        public static IReadOnlyDictionary<int, string> CARD_COLOR_2_STRING { get; } = new Dictionary<int, string>
        {
            {1, "d"},
            {2, "c"},
            {3, "h"},
            {4, "s"}
        };
        public static IReadOnlyDictionary<string, int> CARD_STRING_2_COLOR { get; } = new Dictionary<string, int>
        {
            {"d", 1},
            {"c", 2},
            {"h", 3},
            {"s", 4}
        };
        public static IReadOnlyDictionary<int, string> TONGITS_CARD_NUM_2_STRING { get; } = new Dictionary<int, string>
        {
            {0, "0"},
            {2, "2"},
            {3, "3"},
            {4, "4"},
            {5, "5"},
            {6, "6"},
            {7, "7"},
            {8, "8"},
            {9, "9"},
            {10, "10"},
            {11, "j"},
            {12, "q"},
            {13, "k"},
            {14, "a"},
            {15, "m"},
            {16, "s"},
        };
        public static IReadOnlyDictionary<int, string> TONGITS_CARD_COLOR_2_STRING { get; } = new Dictionary<int, string>
        {
            {0, "0"},
            {1, "d"},
            {2, "c"},
            {3, "h"},
            {4, "s"},
            {5, "b"},
            {6, "r"},
        };
        // 邮箱绑定
        public enum EMAIL_BIND
        {
            NOT_VALID = 0,
            VALID = 1,
            PENDING = 2
        }


        // User Default
        public const string EXPORT_DATA_EMAIL = "EXPORT_DATA_EMAIL";
        public const string LANGUAGE_SETTING = "_language_setting_";

        // Language
        public const string LANGUAGE_CHINESE_SIMPLE = "sc";
        public const string LANGUAGE_CHINESE_TRADITIONAL = "tc";
        public const string LANGUAGE_ENGLISH = "en";
        public const string LANGUAGE_RUSSIAN = "ru";

        // Club
        public const int CLUB_ROLE_CREATOR = 1;    // 创始人
        public const int CLUB_ROLE_ADMIN = 2;    // 管理员
        public const int CLUB_ROLE_AGENT = 5;    // 代理
        public const int CLUB_ROLE_MEMBER = 10;    //普通会员
        public const int CLUB_ROLE_STRANGER = 20;   // 非会员
        public const int EXCHANGE_PPCOIN_MEMBER_LIMIT = 10;
        public const int PP_FLOW_USER = 0;        // 玩家流水
        public const int PP_FLOW_CLUB_USERS = 1;    // 俱乐部流水
        public const int PP_FLOW_AGENT = 2;        // 代理流水
        public const int PP_FLOW_AGENT_USERS = 3;   // 代理的玩家流水

        // 罗马数字
        public enum RomanNumber
        {
            I = 1,
            II = 2,
            III = 3,
            IV = 4,
            V = 5,
            VI = 6,
            VII = 7,
            VIII = 8,
            IX = 9,
            X = 10
        }

        // 风控
        public const int RISK_TYPE_UNKOWN = 0;
        public const int RISK_TYPE_RISKMGR = 1; //风控
        public const int RISK_TYPE_INSURANCE = 2; //保险
        public const int RISK_TYPE_RUN_IT_MULTI_TIMES = 3; //发多次
        public const int RISK_TYPE_CANCEL = 4; //风控被取消

        // 禁言功能花費
        public const int FORBIDDEN_CHAT_DIAMOND = 18;

        // 俱樂部whatsAPP聯繫彈窗開啟所需俱樂部人數
        public const int CLUB_WHATSAPP_PLAYER_COUNT = 30;



        public static IReadOnlyDictionary<int, int> LEAGUE_GAME_COST { get; } = new Dictionary<int, int>
        {
            {20, 18},
            {40, 38},
            {60, 48},
            {80, 68},
            {100, 88},
            {200, 168},
            {400, 338},
            {600, 488},
            {800, 668},
            {1000, 838},
            {2000, 1588},
            {3000, 2388},
            {5000, 3888},
            {10000, 5888},
            {default, 5888}
        };
        public static IReadOnlyDictionary<int, int> LEAGUE_GAME_COST_ANTE { get; } = new Dictionary<int, int>
        {
            {20, 18},
            {40, 38},
            {60, 48},
            {80, 68},
            {100, 88},
            {200, 168},
            {400, 338},
            {600, 488},
            {800, 668},
            {1000, 838},
            {2000, 1588},
            {3000, 2388},
            {5000, 3888},
            {10000, 5888},
            {default, 5888}
        };
        public static IReadOnlyDictionary<int, int> LEAGUE_GAME_COST_TEEN_PATTI { get; } = new Dictionary<int, int>
        {
            {100, 10},
            {200, 20},
            {400, 40},
            {500, 50},
            {800, 80},
            {1000, 100},
            {2000, 180},
            {4000, 320},
            {5000, 380},
            {8000, 580},
            {10000, 680},
            {20000, 1400},
            {40000, 2800},
            {50000, 3200},
            {80000, 4000},
            {100000, 5000},
            {default, 5000}
        };

        public static IReadOnlyDictionary<int, int> LEAGUE_GAME_COST_SEKA { get; } = new Dictionary<int, int>
        {
            {10, 3},
            {20, 6},
            {50, 15},
            {100, 30},
            {200, 60},
            {500, 150},
            {1000, 300},
            {2000, 540},
            {5000, 1140},
            {10000, 2040},
            {20000, 4200},
            {50000, 9600},
            {default, 9600}
        };

        //商城物品类型
        public enum SHOP_ITEM_TYPE
        {
            ITEM = 1,           // 普通物品
            DIAMOND = 2,        // 钻石
            REBATE = 3     // 积分
        }

        //快速商城物品
        public enum FAST_SHOP_ITEM_TYPE
        {
            GOLD = 1,
            DIAMOND = 2,
            VIP = 3,
            REBATE = 4,
            ITEM = 5
        }

        public enum UserDataType
        {
            UNDEFINED = 0,    //未定义
            CLUB_NLH_GAME = 1, 	//ring game
            CLUB_SNG_GAME = 2, 	//sng
            LOBBY_GAME = 3, 	//大厅局
            LADDER_GAME = 4, 	//天梯
            CLUB_OMAHA_GAME = 5,	//奥马哈
            CLUB_MTT_GAME = 6, 	//mtt
            TOUR_SNG_GAME = 7,	//官方赛事SNG
            TOUR_MTT_GAME = 8,	//官方赛事MTT/NLH
            LOBBY_OMAHA_GAME = 9,	//大厅奥马哈
            CLUB_PINE_GAME = 10,    //俱乐部大菠萝
            LOBBY_PINE_GAME = 11,    //大厅大菠萝
            CLUB_OMAHA_SNG_GAME = 12,	//俱乐部奥马哈SNG
            CLUB_OMAHA_MTT_GAME = 13, 	//俱乐部奥马哈MTT
            ZOOM_CASH_NLH = 14, 	// 快速桌NLH
            ZOOM_CASH_OMAHA = 15, 	// 快速桌PLO
            CLUB_NLH_6_PLUS = 16,	//6+德州
            MIXED_GAME = 17,	//混合游戏
            TOUR_SPINUP_GAME = 18, 	// 官方赛事SpinUp
            CLUB_GAME_ALL = 19, 	// 俱樂部All
            LOBBY_GAME_ALL = 20, 	// 大廳All
            TOUR_GAME_ALL = 21, 	// 官方赛事All
            CLUB_OMAHA_HI_LO = 22, 	// omaha hilo
            SPINUP_ROOM = 23, 	// SPINUP
            CLUB_AOF_ROOM = 24, 	// 俱樂部AOF
            TOUR_PLO_GAME = 25,	//官方赛事MTT/PLO
            CLUB_TEENPATTI = 26,	// 俱乐部 teenpatti
            CLUB_PUSOY = 27,	// 俱乐部 Pusoy
            CLUB_COLOR_GAME = 28,	// 俱樂部 COLOR GAME
            LUCKY_DRAW = 29,	// 俱乐部 LUCKY DRAW
            TONGITS = 30,	// TONGITS
            MTT_6_PLUS = 31,	// MTT 6+
            CLUB_SEKA = 32,	// 俱乐部 seka
        }

        //主页页数
        public const int MAIN_PAGE_COUNT = 5;            //pageView页数
        public const int MAIN_PAGE_INDEX_SHOP = 1;
        public const int MAIN_PAGE_INDEX_NOTICE = 2;
        public const int MAIN_PAGE_INDEX_HOME = 3;
        public const int MAIN_PAGE_INDEX_CAREER = 4;
        public const int MAIN_PAGE_INDEX_PROFILE = 5;
        public const int MAX_MAIN_PAGE = 5;

        //跳转目标
        public const int TARGET_VIEW_SHOP = 1;
        public const int TARGET_VIEW_COMMUNITY = 2;

        //主页跳转目标
        public const int MAIN_PAGE_TARGET_SHOP = 4;
        public const int MAIN_PAGE_TARGET_CLUB = 5;

        //天梯界面索引
        public const int LADDER_TARGET_INFO = 1;
        public const int LADDER_TARGET_CONNECT = 2;
        public const int MAIN_PAGE_CLUB_COUNT = 3;        //首页俱乐部列表数量
        public const float MAINPAGE_ACTION_DELAY_TIME = 0.2f;            //底部动画播放时长
        public static IReadOnlyDictionary<int, Dictionary<string, int>> MAINPAGE_BOTTOM_BTN_CONFIG { get; } = new Dictionary<int, Dictionary<string, int>>
        {
            {
                1, new Dictionary<string, int>
                {
                    {"SELECTED", 220},
                    {"LEFT", 190},
                    {"RIGHT", 250}
                }},
            {
                2, new Dictionary<string, int>
                {
                    {"SELECTED", 360},
                    {"LEFT", 330},
                    {"RIGHT", 390}
                }
            },
            {
                3, new Dictionary<string, int>
                {
                    {"SELECTED", 500},
                    {"LEFT", 470},
                    {"RIGHT", 530}
                }
            },
            {
                4, new Dictionary<string, int>
                {
                    {"SELECTED", 640},
                    {"LEFT", 610},
                    {"RIGHT", 670}
                }
            },
            {
                5, new Dictionary<string, int>
                {
                    {"SELECTED", 780},
                    {"LEFT", 750},
                    {"RIGHT", 810}
                }
            }
        };
        public static IReadOnlyDictionary<int, Dictionary<string, int>> MAINPAGE_BOTTOM_DIV_CONFIG { get; } = new Dictionary<int, Dictionary<string, int>>
        {
            {
                1, new Dictionary<string, int>
                {
                    {"LEFT", 260},
                    {"RIGHT", 320}
                }
            },
            {
                2, new Dictionary<string, int>
                {
                    {"LEFT", 400},
                    {"RIGHT", 460}
                }
            },
            {
                3, new Dictionary<string, int>
                {
                    {"LEFT", 540},
                    {"RIGHT", 600}
                }
            },
            {
                4, new Dictionary<string, int>
                {
                    {"LEFT", 680},
                    {"RIGHT", 740}
                }
            }
        };

        // VIP
        public const int VIP_LEVEL_SILVER = 1;
        public const int VIP_LEVEL_GOLDEN = 2;
        public const int VIP_LEVEL_BLACK = 3;
        public const int VIP_LEVEL_PLATINUM = 4;
        public const int VIP_DURATION_MONTH = 1;
        public const int VIP_DURATION_QUARTER = 2;
        public const int VIP_DURATION_YEAR = 3;
        public const string VIP_WEEK_KEY = "week_card";
        public const string VIP_MONTH_KEY = "mon_card";
        public const string VIP_QUARTER_KEY = "quat_card";
        public const string VIP_YEAR_KEY = "year_card";

        //notice
        public const int NOTICE_FROM_MAINPAGE = 0;
        public const int NOTICE_FROM_CLUB = 1;
        public const int NOTICE_FROM_TOURNAMENT = 3;
        public const int NOTICE_FROM_PPWCNOTICE = 4;
        public const int UNION_DISCOUNT_END_TIME = 1505231999; // 联盟消耗折扣截止时间戳

        public enum TOUR_GAME_STATE
        {
            REGISTE = 1, //报名阶段
            LATER_REGISTE = 2, //开赛且能延迟买入
            NOT_REGISTE = 3, //开赛且不能买入了
            GAME_OVER
        }

        public enum TOUR_PLAYER_STATE
        {
            UNREGISTED = 0,
            WAIT_AUTH = 1,
            REGISTED = 2,
            PLAYING = 3,
            LOSED = 4
        }

        // 任务模块分类
        public enum TASK_MODULE
        {
            LOBBY = 0,
            CLUB = 1,
            TOURNAMENT = 2,
            FORUM = 3,
            GENERAL = 4
        }

        // 任务固定类型
        public enum TASK_TYPE
        {
            // Unity自行新增 Start
            WIN_COIN = 1,
            BET = 2,
            WIN_HAND = 3,
            JOIN_SNG = 4,
            JOIN_MTT = 5,
            WIN_SNG = 6,
            WIN_MTT = 7,
            MTT_ITM = 8,
            WIN_CARD_TYPE = 9,
            // Unity自行新增 End

            CLUB_NOVICE = 10, // 俱乐部体验
            LOGIN_REWARD = 11, // 连续签到奖励
            HANDREVIEW_SHARE = 12, // 分享手牌
            FORUM_WATCH_VIEW = 13, // 社区看视频
            FORUM_COMMENT_LIKE = 14, // 社区评论获赞
            JOIN_OFFICIAL_GAME = 15,  //参加一场官方赛事
            DAILY_LOGIN = 16, // 日常登录
            JOIN_SPINUP = 17, //参加SpinUp
            DEALER_TIPS = 18, // 荷官打赏
            SHARE_TASK = 19, // 分享任务
            MAKE_FRIEND = 20, // 添加好友任务
            DAILY_BONUS = 21 // 每日額外獎勵
        }

        // 任务状态
        public enum TASK_STATUS
        {
            UNDONE = 0, // 未开始
            AWARD = 1, // 完成待领奖
            OVER = 2, // 结束    
            READY = 3 // 准备完成(非正常协议状态值,仅用于连续签到任务)
        }

        public const int LUCKY_DRAW_END_TIME = 1514908800;

        public static IReadOnlyDictionary<int, bool> INFO_PANEL_REDDOT { get; } = new Dictionary<int, bool> { };

        public enum BAG_FROM
        {
            FROM_CLUB = 0,
            FROM_MAIN = 1,
            FROM_PPWC = 2,
            FROM_TOUR = 3,
            FROM_LOBBY = 4
        }

        public enum OFFICIAL_GAME_DESC
        {
            TAG_NONE = 0,
            TAG_HOT = 1,
            TAG_NEW = 2,
            TAG_FREE = 3
        }

        public enum OFFICIAL_GAME_TAB_TYPE
        {
            ON_HOT = 0, // 热门赛事
            ON_PPWC = 1 // PPWC赛事
        }

        public sealed class GOLD_VALUE
        {
            public const long CALL_GAME_SHOW_LEVEL = 20000000 * 100; // 展示callgame的买入级别
            public const long WHEEL_HIGH_LEVEL = 20000000 * 100; // 大转盘高额
            public const long WHEEL_ICON_DIVIDE_1 = 1000000; // 大转盘获奖记录金币图标区间
            public const long WHEEL_ICON_DIVIDE_2 = 5000000;
            public const long REBATE_ICON_DIVIDE_1 = 100000 * 100; // 积分兑换金币图标区间
            public const long REBATE_ICON_DIVIDE_2 = 5000000 * 100;
            public const long FIRST_EXP_REWARD = 100000 * 100; // 新手首次牌桌体验金币奖励
        };

        //------------------------------------分享配置---------------------------------------------
        public class SharePlatform
        {
            public string icon;
            public string title;
            public string shareType;
            public bool checkInstalled;
        }

        public static IReadOnlyList<SharePlatform> SHARE_PLATFORM { get; } = new List<SharePlatform>
        {
            new SharePlatform {icon = "share/share_facebook_01.png", title = "Facebook", shareType = "Facebook", checkInstalled = false },
            new SharePlatform {icon = "share/share_messager_01.png", title = "Messenger", shareType = "FacebookMessenger", checkInstalled = true},
            new SharePlatform {icon = "share/share_whatsApp_01.png", title = "WhatsApp", shareType = "WhatsApp", checkInstalled = true},
            new SharePlatform {icon = "share/share_line_01.png", title = "Line", shareType = "Line", checkInstalled = true},
            new SharePlatform {icon = "share/share_telegram_01.png", title = "Telegram", shareType = "Telegram", checkInstalled = true},
            new SharePlatform {icon = "share/share_twitter_01.png", title = "Twitter", shareType = "Twitter", checkInstalled = true},
            new SharePlatform {icon = "share/share_instagram_01.png", title = "Instagram", shareType = "Instagram", checkInstalled = true},
            new SharePlatform {icon = "share/share_link_copy_01.png", title = "Link copy", shareType = "copylink", checkInstalled = false},
            new SharePlatform {icon = "share/share_sms_01.png", title = "SMS", shareType = "ShortMessage", checkInstalled = false},
            new SharePlatform {icon = "share/share_mail_01.png", title = "Email", shareType = "Email", checkInstalled = false},
            new SharePlatform {icon = "share/share_vk_01.png", title = "VK", shareType = "VKontakte", checkInstalled = false}
        };

        public static IReadOnlyDictionary<string, int> SHARE_CONTENT_TYPE { get; } = new Dictionary<string, int>()
        {
            { "SHARE_TEXT", 1 },
            { "SHARE_IMAGE", 2 },
            { "SHARE_WEBPAGE", 4 }
        };
        // 分享类型
        public static IReadOnlyDictionary<int, IReadOnlyDictionary<string, int>> SHARE_TYPE_CONFIG { get; } = new Dictionary<int, IReadOnlyDictionary<string, int>>()
        {
            {
                1, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                2, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                3, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "FacebookMessenger", 2 },
                    { "VKontakte", 2 },
                    { "Line", 2 },
                    { "WhatsApp", 2 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                4, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "FacebookMessenger", 2 },
                    { "Line", 2 },
                    { "WhatsApp", 2 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                5, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                6, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                7, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                8, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                9, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                10, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                11, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                12, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                13, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                14, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                15, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "FacebookMessenger", 2 },
                    { "Instagram", 2 },
                    { "Line", 2 },
                    { "WhatsApp", 2 },
                    { "ShortMessage", 2 }
                }
            },
            {
                16, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 },
                    { "Email", 2 },
                    { "Instagram", 2 }
                }
            },
            {
                17, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                18, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "FacebookMessenger", 2 },
                    { "VKontakte", 2 },
                    { "Line", 2 },
                    { "WhatsApp", 2 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                19, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "Instagram", 2 }
                }
            },
            {
                20, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "Instagram", 2 }
                }
            },
            {
                21, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 },
                    { "Email", 2 },
                    { "Instagram", 2 }
                }
            },
            {
                22, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "WhatsApp", 1 },
                    { "copylink", 1 }
                }
            },
            {
                23, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                24, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "FacebookMessenger", 2 },
                    { "VKontakte", 2 },
                    { "Line", 2 },
                    { "WhatsApp", 2 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                25, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 },
                    { "Email", 2 },
                    { "Instagram", 2 }
                }
            },
            {
                26, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "VKontakte", 2 },
                    { "Instagram", 2 }
                }
            },
            {
                27, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                28, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                29, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                30, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                31, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                32, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                33, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 1 },
                    { "ShortMessage", 1 },
                    { "Email", 1 },
                    { "copylink", 1 }
                }
            },
            {
                34, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "FacebookMessenger", 2 },
                    { "VKontakte", 2 },
                    { "Line", 2 },
                    { "WhatsApp", 2 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                35, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "VKontakte", 2 },
                    { "Instagram", 2 }
                }
            },
            {
                36, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "Email", 2 },
                    { "copylink", 1 }
                }
            },
            {
                37, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "WhatsApp", 1 }
                }
            },
            {
                38, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 1 },
                    { "Email", 2 },
                    { "copylink", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 }
                }
            },
            {
                39, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                40, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                41, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 }
                }
            },
            {
                42, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                43, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                44, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                45, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                46, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                47, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                48, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                49, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                50, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                51, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                52, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                53, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                54, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                55, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                56, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 2 },
                    { "copylink", 1 }
                }
            },
            {
                57, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "ShortMessage", 1 },
                    { "Email", 1 },
                    { "copylink", 1 }
                }
            },
            {
                58, new Dictionary<string, int>()
                {
                    { "Facebook", 2 },
                    { "FacebookMessenger", 2 },
                    { "WhatsApp", 2 },
                    { "Instagram", 2 },
                    { "Twitter", 2 },
                    { "Telegram", 2 },
                    { "Email", 2 }
                }
            },
            {
                59, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "WhatsApp", 1 },
                    { "Line", 1 },
                    { "Instagram", 2 },
                    { "VKontakte", 2 },
                    { "Twitter", 1 },
                    { "Telegram", 1 },
                    { "copylink", 1 }
                }
            },
            {
                61, new Dictionary<string, int>() // 2022 周年領獎分享，61 與php那邊一致
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "WhatsApp", 1 },
                    { "Twitter", 1 },
                    { "Instagram", 2 },
                    { "VKontakte", 2 },
                    { "Telegram", 1 },
                    { "Line", 1 },
                    { "copylink", 1 },
                    { "Email", 1 }
                }
            },
            {
                62, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 1 },
                    { "Email", 2 },
                    { "copylink", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 }
                }
            },
            {
                63, new Dictionary<string, int>()
                {
                    { "Facebook", 4 },
                    { "FacebookMessenger", 4 },
                    { "VKontakte", 4 },
                    { "Line", 1 },
                    { "WhatsApp", 1 },
                    { "Instagram", 2 },
                    { "ShortMessage", 1 },
                    { "Email", 2 },
                    { "copylink", 1 },
                    { "Twitter", 1 },
                    { "Telegram", 1 }
                }
            },
            {
                64, new Dictionary<string, int>()
            }
        };

        public static IReadOnlyDictionary<string, int> SCHEME_URL_PAGE_TYPE { get; } = new Dictionary<string, int>()
        {
            { "CLUB", 1 },
            { "TABLE", 2 }
        };

        public const string SCREEN_SHOT_PATH = "PPPokerShare";

        public static IReadOnlyDictionary<string, string> SHARE_PAGE_TAG { get; } = new Dictionary<string, string>()
        {
            { "SELECTED", "share/share_window_dot_01.png" },
            { "NORMAL", "share/share_window_dot_02.png" }
        };

        public static IReadOnlyDictionary<string, int> SHARE_ROOM_TYPE { get; } = new Dictionary<string, int>()
        {
            { "CASH", 1 },
            { "SNG", 2 },
            { "MTT", 3 },
            { "OFC", 4 }
        };

        public const string SHARE_IMAGE_FILE = "share.png";

        //----------------------------------------------end---------------------------------------------

        public class PreloadingAnimationConfigInfo
        {
            public string path;
            public string frameName;
            public int count;
            public float delay;
        }

        public static IReadOnlyDictionary<string, PreloadingAnimationConfigInfo> ANIMATION_CONFIG { get; } = new Dictionary<string, PreloadingAnimationConfigInfo>()
        {
            {
                "preloading", new PreloadingAnimationConfigInfo()
                {
                    path = "effect/refresh",
                    frameName = "refresh_",
                    count = 15,
                    delay = 0.1f,
                }
            }
        };

        public enum DEALER_ACTION
        {
            NO_ACTION,
            BREATH,
            CHECK,
            COMBO,
            HEART,
            KISS,
            WINK
        }

        public enum DEALER_SCENE
        {
            NORMAL = 0,
            BIGPOT = 1,
            HIT = 2,
            SITDOWN = 3,
            BUBBLE = 4,
            FINALTABLE = 5,
            ALLIN = 6,
            RANDOM = 7,
            TIP = 8,
            DELAY = 9,
        }

        public static IReadOnlyDictionary<int, DEALER_ACTION> DEALER_SCENE_ACTION { get; } = new Dictionary<int, DEALER_ACTION>()
        {
            { 0, DEALER_ACTION.BREATH },
            { 1, DEALER_ACTION.HEART },
            { 2, DEALER_ACTION.HEART },
            { 3, DEALER_ACTION.HEART },
            { 4, DEALER_ACTION.HEART },
            { 5, DEALER_ACTION.HEART },
            { 6, DEALER_ACTION.BREATH },
            { 7, DEALER_ACTION.WINK },
            { 8, DEALER_ACTION.KISS },
            { 9, DEALER_ACTION.CHECK }
        };

        public static IReadOnlyDictionary<DEALER_ACTION, string> ACTION_NAMES { get; } = new Dictionary<DEALER_ACTION, string>()
        {
            { DEALER_ACTION.BREATH, "breath"},
            { DEALER_ACTION.CHECK,  "check"},
            { DEALER_ACTION.COMBO,  "combo"},
            { DEALER_ACTION.HEART,  "heart"},
            { DEALER_ACTION.KISS,   "kiss"},
            { DEALER_ACTION.WINK,   "wink"},
        };

        public const int DEALER_INDEX = 100;

        public class HISTORY_HAND_VIEW
        {
            public const int INFO = 1;
            public const int DETAIL = 2;
        }
        public const double HOLDEM_INSURANCE_PACKAGE_ODDS = 3.5;
        // 初始化字典  
        public static Dictionary<int, double> OMAHA_INSURANCE_ODDS = new Dictionary<int, double>
        {
            { 0, 0.5 },
            { 1, 24 },
            { 2, 12 },
            { 3, 8 },
            { 4, 6 },
            { 5, 4.5 },
            { 6, 4 },
            { 7, 3.2 },
            { 8, 2.7 },
            { 9, 2.3 },
            { 10, 2 },
            { 11, 1.7 },
            { 12, 1.5 },
            { 13, 1.3 },
            { 14, 1.2 },
            { 15, 1.1 },
            { 16, 1 },
            { 17, 0.8 },
            { 18, 0.7 },
            { 19, 0.6 },
            { 20, 0.5 }
        };

        public static Dictionary<int, double> HOLDEM_INSURANCE_ODDS = new Dictionary<int, double>
        {
            { 1, 32 },
            { 2, 16 },
            { 3, 11 },
            { 4, 8 },
            { 5, 6 },
            { 6, 5 },
            { 7, 4 },
            { 8, 3.5 },
            { 9, 3 },
            { 10, 2.5 },
            { 11, 2.2 },
            { 12, 2 },
            { 13, 1.8 },
            { 14, 1.6 },
            { 15, 1.4 },
            { 16, 1.2 },
            { 17, 1.0 },
            { 18, 0.8 },
            { 19, 0.6 },
            { 20, 0.5 }
        };

        public static IReadOnlyDictionary<int, string> HISTORY_HAND_ACTION_IMG { get; } = new Dictionary<int, string>()
        {
            { 1, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_f.png" }, // ACTION_FOLD = 1;
            { 2, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_c.png" }, // ACTION_CHECK = 2;
            { 3, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_c2.png" }, // ACTION_CALL = 3;
            { 4, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_r.png" }, // ACTION_RAISE = 4;
            { 5, "" }, // ACTION_WAIT = 5;  //等待下注
            { 6, "" }, // ACTION_SITED = 6;  //坐下，未入局状态
            { 7, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_b.png" }, // ACTION_BET = 7;  //第一个加注
            { 8, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_sb.png" }, // ACTION_SB = 8;  //下小盲
            { 9, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_bb.png" }, // ACTION_BB = 9;   //下大盲
            { 10, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_a.png" }, // ACTION_ANTE = 10;  //下前注
            { 11, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_bb.png" }, // ACTION_FORCE_BB = 11; //强制大盲
			//系统操作产生的类型
            { 12, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_f.png" }, // ACTION_SYSTEM_FOLD = 12; //系统自动弃牌
            { 13, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_c.png" }, // ACTION_SYSTEM_CHECK = 13;  //系统自动看牌
            { 14, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_s.png" }, // ACTION_STRADDLE = 14;
            { 15, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_p.png" }, // ACTION_POT = 15; //底池限注时，加注满一个pool
            { 16, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_f.png" }, // fast_fold = 16;
            { 99, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_an.png" }, // 6+德州下前注 = 99;
            { 100, "Assets/Production/PPPoker/Res/Texture/history_hands/icon_action_a.png" } // 客户端自定义操作，allin
        };

        public class HistoryHandPosImgInfo
        {
            public string info_me;
            public string info_other;
            public string detail_me;
            public string detail_other;
        }

        public static IReadOnlyDictionary<string, HistoryHandPosImgInfo> HISTORY_HAND_POS_IMG { get; } = new Dictionary<string, HistoryHandPosImgInfo>()
        {
            {
                "BTN/SB", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_1.png"
                }
            },
            {
                "BTN", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_btn_1.png"
                }
            },
            {
                "SB", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_sb_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_sb_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_sb_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_sb_1.png"
                }
            },
            {
                "BB", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_bb_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_bb_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_bb_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_bb_1.png"
                }
            },
            {
                "UTG", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg_1.png"
                }
            },
            {
                "UTG+1", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg1_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg1_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg1_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg1_1.png"
                }
            },
            {
                "MP", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_1.png"
                }
            },
            {
                "MP1", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp1_1.png"
                }
            },
            {
                "MP2", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp2_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp2_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp2_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_mp2_1.png"
                }
            },
            {
                "HJ", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_hj_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_hj_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_hj_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_hj_1.png"
                }
            },
            {
                "CO", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_co_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_co_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_co_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_co_1.png"
                }
            },
            {
                "UTG+2", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg2_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg2_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg2_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg2_1.png"
                }
            },
            {
                "UTG+3", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg3_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg3_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg3_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg3_1.png"
                }
            },
            {
                "UTG+4", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg4_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg4_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg4_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg4_1.png"
                }
            },
            {
                "UTG+5", new HistoryHandPosImgInfo
                {
                    info_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg5_2.png",
                    info_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg5_1.png",
                    detail_me = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg5_2.png",
                    detail_other = "Assets/Production/PPPoker/Res/Texture/history_hands/icon_dtab_utg5_1.png"
                }
            }
        };

        public enum ROUND_STAGE
        {
            ROUND_NONE = 0,
            ROUND_PRE_FLOP = 1,
            ROUND_FLOP = 2,
            ROUND_TURN = 3,
            ROUND_RIVER = 4,
            ROUND_COMPLETE = 5
        }

        public static IReadOnlyDictionary<int, string> ROUND_STAGE_TEXT { get; } = new Dictionary<int, string>()
        {
            [0] = "None",
            [1] = "LAB_HISTORY_PREFLOP",
            [2] = "LAB_HISTORY_FLOP",
            [3] = "LAB_HISTORY_TURN",
            [4] = "LAB_HISTORY_RIVER",
            [5] = "LAB_HISTORY_SHOWDOWN",
        };

        public static IReadOnlyDictionary<string, string> IOS_DEVICE_CONFIG { get; } = new Dictionary<string, string>()
        {
            { "iPad1,1", "iPad 1" },
            { "iPad2,1", "iPad 2" },
            { "iPad2,2", "iPad 2" },
            { "iPad2,3", "iPad 2" },
            { "iPad2,4", "iPad 2" },
            { "iPad3,1", "iPad 3" },
            { "iPad3,2", "iPad 3" },
            { "iPad3,3", "iPad 3" },
            { "iPad3,4", "iPad 4" },
            { "iPad3,5", "iPad 4" },
            { "iPad3,6", "iPad 4" },
            { "iPad4,1", "iPad Air" },
            { "iPad4,2", "iPad Air" },
            { "iPad4,3", "iPad Air" },
            { "iPad5,3", "iPad Air 2" },
            { "iPad5,4", "iPad Air 2" },
            { "iPad6,7", "iPad Pro" },
            { "iPad6,8", "iPad Pro" },
            { "iPad6,3", "iPad Pro" },
            { "iPad6,4", "iPad Pro" },
            { "iPad6,11", "iPad 5" },
            { "iPad6,12", "iPad 5" },
            { "iPad7,1", "iPad Pro 2" },
            { "iPad7,2", "iPad Pro 2" },
            { "iPad7,3", "iPad Pro" },
            { "iPad7,4", "iPad Pro" },
            { "iPad7,5", "iPad 6" },
            { "iPad7,6", "iPad 6" },
            { "iPad2,5", "iPad mini" },
            { "iPad2,6", "iPad mini" },
            { "iPad2,7", "iPad mini" },
            { "iPad4,4", "iPad mini 2" },
            { "iPad4,5", "iPad mini 2" },
            { "iPad4,6", "iPad mini 2" },
            { "iPad4,7", "iPad mini 3" },
            { "iPad4,8", "iPad mini 3" },
            { "iPad4,9", "iPad mini 3" },
            { "iPad5,1", "iPad mini 4" },
            { "iPad5,2", "iPad mini 4" },
            { "iPhone1,1", "iPhone 1" },
            { "iPhone1,2", "iPhone 3G" },
            { "iPhone2,1", "iPhone 3GS" },
            { "iPhone3,1", "iPhone 4" },
            { "iPhone3,2", "iPhone 4" },
            { "iPhone3,3", "iPhone 4" },
            { "iPhone4,1", "iPhone 4S" },
            { "iPhone5,1", "iPhone 5" },
            { "iPhone5,2", "iPhone 5" },
            { "iPhone5,3", "iPhone 5C" },
            { "iPhone5,4", "iPhone 5C" },
            { "iPhone6,1", "iPhone 5S" },
            { "iPhone6,2", "iPhone 5S" },
            { "iPhone7,1", "iPhone 6 PLUS" },
            { "iPhone7,2", "iPhone 6" },
            { "iPhone8,1", "iPhone 6S" },
            { "iPhone8,2", "iPhone 6S PLUS" },
            { "iPhone8,4", "iPhone SE" },
            { "iPhone9,1", "iPhone 7" },
            { "iPhone9,2", "iPhone 7 PLUS" },
            { "iPhone9,3", "iPhone 7" },
            { "iPhone9,4", "iPhone 7 PLUS" },
            { "iPhone10,1", "iPhone 8" },
            { "iPhone10,2", "iPhone 8 PLUS" },
            { "iPhone10,3", "iPhone X" },
            { "iPhone10,4", "iPhone 8" },
            { "iPhone10,5", "iPhone 8 PLUS" },
            { "iPhone10,6", "iPhone X" },
            { "iPhone11,8", "iPhone XR" },
            { "iPhone11,2", "iPhone XS" },
            { "iPhone11,4", "iPhone XS MAX" },
            { "iPhone11,6", "iPhone XS MAX" },
            { "iPhone12,8", "iPhone SE2" },
            { "iPhone13,1", "iPhone 12 mini" },
            { "iPhone13,2", "iPhone 12" },
            { "iPhone13,3", "iPhone 12 Pro" },
            { "iPhone13,4", "iPhone 12 Pro Max" },
            { "iPhone14,2", "iPhone 13 Pro" },
            { "iPhone14,3", "iPhone 13 Pro Max" },
            { "iPhone14,4", "iPhone 13 Pro Mini" },
            { "iPhone14,5", "iPhone 13" },
            { "iPhone14,6", "iPhone SE3" }
        };

        public static IReadOnlyList<string> HAND_REVIEW_FILE { get; } = new List<string>()
        {
            "hand",
            "recent",
            "collection"
        };

        public enum SCENE_TABLE_TYPE
        {
            PINEAPPLE = 1,
            HOLDEM_OR_OMAHA = 2,
            TEENPATTI = 3,
            PUSOY = 4,
            COLOR_GAME = 5,
            TONGITS = 5,
            SEKA = 6,
        }

        public const int DELAY_CLOCK_DIAMOND = 10;
        public const int MAX_MULTI_TABLE = 3;
        public const int PINEAPPLE_MAX_TASK = 10;
        public const int PUSOYAPPLE_MAX_TASK = 10;
        public const int SEKAAPPLE_MAX_TASK = 10;

        public enum CLUB_BAGPACK_TYPE
        {
            TICKET = 0,
            ENTITY = 1,
            ALL_TYPE = 2,
            PPST_TICKET = 3
        }

        public enum CLUB_FLOW_TYPE
        {
            CHIPS = 0,  // 收发流水
            CREDIT = 1,  // 授信流水
            GTD = 2,  // 保底流水
            TICKET = 3,  // 门票回收流水
            ENTITY = 4,  // 实物回收流水
            PPCHIPSSTORM = 5,  // PP币雨流水
            LEAVE_CLUB = 6, // player leave club
            LEAVE_CREDIT = 7,
            ADD_TICKET = 8,         // 添加俱乐部门票
            GIVE_TICKET = 9,        // 赠送俱乐部门票
            RECYCLE_TICKET = 10,    // 回收俱乐部门票
            EXPIRE_TICKET = 11,     // 过期俱乐部门票
            STORM_CREATE = 12,      // 创建PP币雨
            STORM_CHANGE = 13,      // 变更PP币雨
            STORM_CANCEL = 14,      // 终止PP币雨
            STORM_ROLLBACK = 15,    // PP币雨剩余返还
            RINGGAMEVENT = 16, // 个人ringgame排行榜收入
            MTTGAMEEVENT = 21, // 个人mttgame排行榜收入

            RINGGAME_CREATE = 17,   // 创建RINGGAME排行榜活动
            RINGGAME_CHANGE = 18,   // 更改
            RINGGAME_CANCEL = 19,   // 取消

            MTTGAME_CREATE = 22,    // 创建MTTGAME排行榜活动
            MTTGAME_CHANGE = 23,    // 更改
            MTTGAME_CANCEL = 24,    // 取消

            RINGGAME_RETURNBACK = 20, // RINGGAME返回
            MTTGAME_RETURNBACK = 25,  // MTTGAME返回

            //  SpecifiedRG
            SPECIFIED_EVENT = 26, //  SpecifiedRG活動獎勵
            SPECIFIED_CREATE = 27, //  創建SpecifiedRG 活動
            SPECIFIED_CHANGE = 28, //  變更SpecifiedRG 活動
            SPECIFIED_CANCEL = 29, //  中止SpecifiedRG 活動
            SPECIFIED_RETURNBACK = 30, //  SpecifiedRG活動剩餘返還

            //  daily
            CLUB_DAILY_REWARD = 31,

            //  手牌任務
            HANDMISSION_PPCHIPS_PLAYER = 32,
            HANDMISSION_LUCKYDRAW_PLAYER = 33,
            HANDMISSION_PPCHIPS_CLUB = 34,
            HANDMISSION_LUCKYDRAW_CLUB = 35,
        }

        public const double MULTI_TABLE_SCROLL_TIME = 0.2;
        public const string MULTI_TABLE_SCROLL_EASE = "SINEOUT";

        // 首页弹窗列表顺序（越小优先级越高）
        public const int POPUP_CHANGE_LANGUAGE = 0;         // 0语言选择弹窗
        public const int POPUP_UPDATE_NOTICE = 10;          // 1更新内容弹窗
        public const int POPUP_PPGL_NEW_SEASON = 120;       // PPGL Season Satrt
        public const int POPUP_OUTSIDE_WIDGET = 200;        // 2外部控件弹窗
        public const int POPUP_MAINPAGE_ACTIVITY = 300;     // 3首页活动弹窗
        public const int POPUP_ANNIVERSARY_REWARD = 310;    // 3.1 周年奖励弹窗
        public const int POPUP_DAILY_NOTICE = 400;          // 4宣传公告弹窗
        public const int POPUP_UPGRADE = 500;               // 5个人升级弹窗
        public const int POPUP_RECALL_REWARD = 600;         // 6推送召回奖励弹窗
        public const int POPUP_EMAIL_RECALL_REWARD = 700;   // 7邮件召回奖励弹窗
        public const int POPUP_SPECIFIC_USER = 800;         // 8特定用户弹窗
        public const int POPUP_LOGIN_REWARD = 900;          // 9登陆奖励弹窗
        public const int POPUP_GAME_POPULARIZE = 1000;      // 10官方赛事弹窗

        // 默认下注按钮数值 
        public class DEFAULT_POT_BTN_NUM
        {
            public const int oneBtnMoleculeNumNLH = 1; // 自定义下注按钮的倍数分子
            public const int oneBtnDenominatorNumNLH = 2; // 自定义下注按钮的倍数分母
            public const int twoBtnMoleculeNumNLH = 2;
            public const int twoBtnDenominatorNumNLH = 3;
            public const int threeBtnMoleculeNumNLH = 1;
            public const int threeBtnDenominatorNumNLH = 1;
            public const int oneBtnMoleculeNumPLO = 1;
            public const int oneBtnDenominatorNumPLO = 2;
            public const int twoBtnMoleculeNumPLO = 2;
            public const int twoBtnDenominatorNumPLO = 3;
            public const int threeBtnMoleculeNumPLO = 1;
            public const int threeBtnDenominatorNumPLO = 1;
        }

        // 默认加倍按钮数值
        public class DEFAULT_BET_BTN_NUM
        {
            public const int oneBtnNumNLH = 2;
            public const int twoBtnNumNLH = 3;
            public const int threeBtnNumNLH = 4;
            public const int oneBtnNumPLO = 2;
            public const int twoBtnNumPLO = 3;
            public const int threeBtnNumPLO = 4;
        }

        // 預設頭像框
        public const string DEFAULT_ICON_FRAME = "head_frame_def";

        // mtt报名，俱乐部id为0时，请求协议的函数。
        public enum MTT_JOIN_ERROR_PLACE
        {
            onStartRebuyCallback = 1,
            requestMttRebuy = 2,
            requestJoinOrUnJoin = 3,
            MttRegisterConFirmDialog = 4,
        }

        public enum H5_URL_TYPE
        {
            DEFAULT = 0,
            FORUM = 1,
            RECORD = 2,
            SERVICE = 3,
        }

        // 分组赛
        public static IReadOnlyDictionary<int, int> DAY_1_LEVEL { get; } = new Dictionary<int, int>()
        {
            {1, 16},
            {2, 17},
            {3, 18},
            {4, 19},
            {5, 20},
            {6, 21},
            {7, 22},
            {8, 23},
            {9, 24},
            {10, 25},
            {11, 26},
            {12, 27},
            {13, 28},
            {14, 29},
            {15, 30},
            {16, 31},
            {17, 32},
            {18, 33},
            {19, 34},
            {20, 35},
            {21, 36},
            {22, 37},
            {23, 38},
            {24, 39},
            {25, 40},
        };

        public enum SCHEME_URL_FROM
        {
            START_APP = 0,
            TABLE = 1,
            MAIN_SCENE = 2
        }

        public enum CLUB_RED_DOT_TYPE
        {
            BAG = 1, // 背包
        }



        public class RingGameAnte
        {
            public List<int> ante = new List<int>();
            public int sb;
            public int bb;
        }

        public static Dictionary<string, Dictionary<int, RingGameAnte>> RING_GAME_ANTE = new Dictionary<string, Dictionary<int, RingGameAnte>>()
        {
            {
                "COMMOM", new Dictionary<int, RingGameAnte>()
                {
                    { 1, new RingGameAnte { ante = {1}, sb = 1, bb = 2 } },
                    { 2, new RingGameAnte { ante = {1, 2}, sb = 2, bb = 4 } },
                    { 3, new RingGameAnte { ante = {1, 2, 3}, sb = 3, bb = 6 } },
                    { 4, new RingGameAnte { ante = {2, 3, 4, 5}, sb = 5, bb = 10 } },
                    { 5, new RingGameAnte { ante = {4, 6, 8, 10}, sb = 10, bb = 20 }},
                    { 6, new RingGameAnte { ante = {8, 12, 16, 20}, sb = 20, bb = 40 } },
                    { 7, new RingGameAnte { ante = {12, 18, 24, 30}, sb = 30, bb = 60 } },
                    { 8, new RingGameAnte { ante = {16, 24, 32, 40}, sb = 40, bb = 80 } },
                    { 9, new RingGameAnte { ante = {20, 30, 40, 50}, sb = 50, bb = 100 } },
                    { 10, new RingGameAnte { ante = {40, 60, 80, 100}, sb = 100, bb = 200 } },
                    { 11, new RingGameAnte { ante = {80, 120, 160, 200}, sb = 200, bb = 400 } },
                    { 12, new RingGameAnte { ante = {120, 180, 240, 300}, sb = 300, bb = 600 } },
                    { 13, new RingGameAnte { ante = {160, 240, 320, 400}, sb = 400, bb = 800 } },
                    { 14, new RingGameAnte { ante = {200, 300, 400, 500}, sb = 500, bb = 1000 } },
                    { 15, new RingGameAnte { ante = {400, 600, 800, 1000}, sb = 1000, bb = 2000 } },
                    { 16, new RingGameAnte { ante = {600, 900, 1200, 1500}, sb = 1500, bb = 3000 } },
                    { 17, new RingGameAnte { ante = {800, 1200, 1600, 2000}, sb = 2000, bb = 4000 } },
                    { 18, new RingGameAnte { ante = {1000, 1500, 2000, 2500}, sb = 2500, bb = 5000 } },
                    { 19, new RingGameAnte { ante = {1200, 1800, 2400, 3000}, sb = 3000, bb = 6000 } },
                    { 20, new RingGameAnte { ante = {1600, 2400, 3200, 4000}, sb = 4000, bb = 8000 } },
                    { 21, new RingGameAnte { ante = {2000, 3000, 4000, 5000}, sb = 5000, bb = 10000 } },
                    { 22, new RingGameAnte { ante = {4000, 6000, 8000, 10000}, sb = 10000, bb = 20000 } },
                    { 23, new RingGameAnte { ante = {6000, 9000, 12000, 15000}, sb = 15000, bb = 30000 } },
                    { 24, new RingGameAnte { ante = {8000, 12000, 16000, 20000}, sb = 20000, bb = 40000 } },
                    { 25, new RingGameAnte { ante = {10000, 15000, 20000, 25000}, sb = 25000, bb = 50000 } },
                    { 26, new RingGameAnte { ante = {20000, 30000, 40000, 50000}, sb = 50000, bb = 100000 } },
                }
            },
            {
                "Philippines", new Dictionary<int, RingGameAnte>()
                {
                    { 1, new RingGameAnte { ante = {100}, sb = 100, bb = 200 } },
                    { 2, new RingGameAnte { ante = {100, 200}, sb = 200, bb = 400 } },
                    { 3, new RingGameAnte { ante = {100, 200, 300}, sb = 300, bb = 600 } },
                    { 4, new RingGameAnte { ante = {100, 200, 300, 400}, sb = 400, bb = 800 } },
                }
            },
        };


        //管理员相关权限表 (代码预留了16个值)
        public enum MANAGE_AUTHORITY
        {
            MEMBER_JOIN_OR_REMOVE = 0, //会员加入或移除
            AGENCY_CREDIT = 1,//代理线下授信
            DATA_BROWSING = 2,//数据浏览
            PPCOIN_OR_LEVEL_EXCHANGE = 3,//钻石兌換
            SEND_OR_RECEIVE_PPCOIN = 4, //收發PP幣
            TABLE_CONCERN = 5,//牌桌相关
            CLUB_PROFILE_AND_NEWS = 6, //俱樂部簡介/消息
            CLUB_ACTIVITY = 7, //俱乐部活动
            CERTIFIED_MEMBER = 8, //認證會員
		    STOP_LOSS                = 9, //停損功能
        }
        // 驗證碼類型
        public enum CAPTCHA_TYPE
        {
            SLIDE = 1,   // 滑動方塊
            ICON = 2,   // 圖標點選
            CALC = 3,   // 數值計算
        }
        public enum CLUB_ACTIVITY_TYPE
        {
            CHIPSSTORM = 1, //pp币雨
            RINGGAME = 2,   //个人排行榜
            MTTGAME = 3,    //比赛排行榜
        }
        public enum NATURAL_TYPE
        {
            NATURAL_NONE = 0,
            NATURAL_SIX_PAIRS = 1,          // 六對
            NATURAL_THREE_FLUSHES = 2,      // 三同花
            NATURAL_THREE_STRAIGHTS = 3,    // 三順
            NATURAL_DRAGON = 4              // 一條龍
        }
        // 牌桌座位狀態
        public const int SEATICON_SITDOWN = 1;            // 牌桌坐下狀態
        public const int SEATICON_STANDUP = 2;            // 牌桌可坐下狀態
        public const int SEATICON_EMPTY = 3;            // 牌桌空桌狀態 (不可坐)
        // MTT 结算各个弹窗层级
        // ZORDER.DIALOG_ZORDER
        public enum MTT_SETTLE_ZORDER
        {
            MY_RANK = 1000000 + 10, // 个人排名
            MY_PPGL = 1000000 + 9, // PPGL 
            ALL_RANK = 1000000 + 8, // 所有排名
        }
        // PPGL 排行榜类型
        public enum PPGL_LBTYPE
        {
            QUALIFIER = 1,
            FINAL = 2,
            WEIGHT = 3,
        }
        public enum PPGL_PROCESS
        {
            NO_START = 10, // 赛季未开始
            QUALIFIER = 20, // 选拔赛赛
            PRE_FINAL = 30, // 决赛预备
            FINAL = 40, // 决赛进行
            SEASON_ENDING = 50, // 决赛打完,赛季结束
        }
        public enum BOMBPOT_TYPE
        {
            NONE = 0,
            HAND_CYCLE = 1, // 手牌循环
            MINUTE_CYCLE = 2, // 分钟循环    
        }
        public enum HANDMISSION_TYPE
        {
            GAMEMODE = 0,
            HANDTYPE = 1,
        }
        public enum HANDMISSION_REWARDTYPE
        {
            CHIPS = 0,
            LUCKYDRAW = 1,
            EXPLANATION = 2,
        }
        public enum LEADERBOARD_REWARDTYPE
        {
            CHIPS = 0,
            CUSTOM = 1
        }
        public enum HANDTYPE
        {
            NONE = 0,
            FOLD = -1,
            HIGH_CARD = 1,
            PAIR = 2,
            TWO_PAIRS = 3,
            THREE_KIND = 4,
            STRAIGHT = 5,
            FLUSH = 6,
            FULL_HOUSE = 7,
            FOUR_KIND = 8,
            STRAIGHT_FLUSH = 9,
            ROYAL_FLUSH = 10
        }
        public enum CLUB_ACTIVITY_SCORETYPE
        {
            POINTS = 0,
            HAND_COUNT = 1
        }
        public enum CLUB_ACTIVITY_STATUS
        {
            NOT_STARTED = 0,
            STARTED = 1,
            OVER = 2,
            CANCELLED = 3,
            CANCELLED_CANNOT_CLAIM = 4
        }
        public enum BOOLEAN
        {
            FALSE = 0,
            TRUE = 1
        }

        public struct SubMenuConfig
        {
            public string Name;
            public string PageTitle;
            public int VirtualIndex;
            public UserDataType GameType;
            public int UIType;
            public string LogKey;
        }

        public static Dictionary<int, List<SubMenuConfig>> SUB_MENU_CONFIG = new Dictionary<int, List<SubMenuConfig>>()
        {
            {
                1, new List<SubMenuConfig>()
                {
                    new SubMenuConfig { Name = "LAB_UNION_FILTER_GAMETYPE_ALL", PageTitle = "LAB_UNION_FILTER_GAMETYPE_ALL", VirtualIndex = 12,
                        GameType = UserDataType.CLUB_GAME_ALL, UIType = 1, LogKey = "gamedata_club_all" },
                    new SubMenuConfig { Name = "LAB_CAREER_TYPE_RINGS", PageTitle = "LAB_CAREER_TYPE_RINGS", VirtualIndex = 1,
                        GameType = UserDataType.CLUB_NLH_GAME, UIType = 1, LogKey = "gamedata_club_nlh" },
                    new SubMenuConfig { Name = "AOF", PageTitle = "AOF", VirtualIndex = 15,
                        GameType = UserDataType.CLUB_AOF_ROOM, UIType = 1, LogKey = "gamedata_club_aof" },
                    new SubMenuConfig { Name = "6+", PageTitle = "6+", VirtualIndex = 10,
                        GameType = UserDataType.CLUB_NLH_6_PLUS, UIType = 1, LogKey = "gamedata_club_6+nlh" },
                    new SubMenuConfig { Name = "LAB_CAREER_TYPE_OMAHA1", PageTitle = "LAB_CAREER_TYPE_OMAHA1", VirtualIndex = 2,
                        GameType = UserDataType.CLUB_OMAHA_GAME, UIType = 1, LogKey = "gamedata_club_plo" },
                    new SubMenuConfig { Name = "PLO H/L", PageTitle = "PLO Hi/Lo", VirtualIndex = 13,
                        GameType = UserDataType.CLUB_OMAHA_HI_LO, UIType = 1, LogKey = "gamedata_club_plohl" },
                    new SubMenuConfig { Name = "FLASH/NLH", PageTitle = "FLASH/NLH", VirtualIndex = 8,
                        GameType = UserDataType.ZOOM_CASH_NLH, UIType = 1, LogKey = "gamedata_club_flash/nlh" },
                    new SubMenuConfig { Name = "FLASH/PLO", PageTitle = "FLASH/PLO", VirtualIndex = 9,
                        GameType = UserDataType.ZOOM_CASH_OMAHA, UIType = 1, LogKey = "gamedata_club_flash/plo" },
                    new SubMenuConfig { Name = "NLH&PLO", PageTitle = "NLH&PLO", VirtualIndex = 11,
                        GameType = UserDataType.MIXED_GAME, UIType = 1, LogKey = "gamedata_club_mixedgame" },
                    new SubMenuConfig { Name = "LAB_OFC_SHORTENED", PageTitle = "LAB_OFC", VirtualIndex = 7,
                        GameType = UserDataType.CLUB_PINE_GAME, UIType = 2, LogKey = "gamedata_club_ofc" },
                    new SubMenuConfig { Name = "SEKA", PageTitle = "SEKA", VirtualIndex = 11,
                        GameType = UserDataType.CLUB_SEKA, UIType = 1, LogKey = "gamedata_club_seka" },
                    new SubMenuConfig { Name = "TEEN PATTI", PageTitle = "TEEN PATTI", VirtualIndex = 11,
                        GameType = UserDataType.CLUB_TEENPATTI, UIType = 1, LogKey = "gamedata_club_teenpatti" },
                    new SubMenuConfig { Name = "PUSOY", PageTitle = "PUSOY", VirtualIndex = 8,
                        GameType = UserDataType.CLUB_PUSOY, UIType = 1, LogKey = "gamedata_club_pusoy" },
                    new SubMenuConfig { Name = "TONGITS", PageTitle = "LAB_TONGITS_CAREER_TITLE", VirtualIndex = 18,
                        GameType = UserDataType.TONGITS, UIType = 1, LogKey = "gamedata_club_tongits" },
                    new SubMenuConfig { Name = "COLOR GAME", PageTitle = "LAB_COLORGAME_GAMENAME", VirtualIndex = 17,
                        GameType = UserDataType.CLUB_COLOR_GAME, UIType = 1, LogKey = "gamedata_club_colorgame" },
                    new SubMenuConfig { Name = "LUCKY DRAW", PageTitle = "LAB_LUCKYDRAW_TITLE", VirtualIndex = 11,
                        GameType = UserDataType.LUCKY_DRAW, UIType = 1, LogKey = "gamedata_club_luckydraw" },
                    new SubMenuConfig { Name = "SNG/NLH", PageTitle = "SNG/NLH", VirtualIndex = 3,
                        GameType = UserDataType.CLUB_SNG_GAME, UIType = 2, LogKey = "gamedata_club_sng/nlh"},
                    new SubMenuConfig { Name = "SNG/PLO", PageTitle = "SNG/PLO", VirtualIndex = 5,
                        GameType = UserDataType.CLUB_OMAHA_SNG_GAME, UIType = 2, LogKey = "gamedata_club_sng/plo"},
                    new SubMenuConfig { Name = "SPINUP", PageTitle = "SPINUP", VirtualIndex = 14,
                        GameType = UserDataType.SPINUP_ROOM, UIType = 2, LogKey = "gamedata_club_spinup"},
                    new SubMenuConfig { Name = "MTT/6+", PageTitle = "MTT/6+", VirtualIndex = 6,
                        GameType = UserDataType.MTT_6_PLUS, UIType = 2, LogKey = "gamedata_club_6+mtt"},
                    new SubMenuConfig { Name = "MTT/NLH", PageTitle = "MTT/NLH", VirtualIndex = 4,
                        GameType = UserDataType.CLUB_MTT_GAME, UIType = 2, LogKey = "gamedata_club_mtt/nlh"},
                    new SubMenuConfig { Name = "MTT/PLO", PageTitle = "MTT/PLO", VirtualIndex = 6,
                        GameType = UserDataType.CLUB_OMAHA_MTT_GAME, UIType = 2, LogKey = "gamedata_club_mtt/plo"},
                }
            },
            {
                2, new List<SubMenuConfig>()
                {
                    new SubMenuConfig { Name = "LAB_UNION_FILTER_GAMETYPE_ALL", PageTitle = "ALL", VirtualIndex = 8,
                        GameType = UserDataType.LOBBY_GAME_ALL, UIType = 1, LogKey = "gamedata_lobby_all" },
                    new SubMenuConfig { Name = "LAB_CAREER_TYPE_RINGS", PageTitle = "LAB_CAREER_TYPE_RINGS", VirtualIndex = 5,
                        GameType = UserDataType.LOBBY_GAME, UIType = 1, LogKey = "gamedata_lobby_nlh"},
                    new SubMenuConfig { Name = "LAB_CAREER_TYPE_OMAHA1", PageTitle = "LAB_CAREER_TYPE_OMAHA1", VirtualIndex = 6,
                        GameType = UserDataType.LOBBY_OMAHA_GAME, UIType = 1, LogKey = "gamedata_lobby_plo"},
                    new SubMenuConfig { Name = "LAB_OFC_SHORTENED", PageTitle = "LAB_OFC", VirtualIndex = 7,
                        GameType = UserDataType.LOBBY_PINE_GAME, UIType = 1, LogKey = "gamedata_lobby_ofc"},
                }
            },
            {
                3, new List<SubMenuConfig>()
                {
                    new SubMenuConfig { Name = "LAB_UNION_FILTER_GAMETYPE_ALL", PageTitle = "ALL", VirtualIndex = 10,
                        GameType = UserDataType.TOUR_GAME_ALL, UIType = 2, LogKey = "gamedata_globaltournament_all" },
                    new SubMenuConfig { Name = "LAB_CAREER_TYPE_TOUR", PageTitle = "LAB_CAREER_TYPE_TOUR", VirtualIndex = 7,
                        GameType = UserDataType.TOUR_SNG_GAME, UIType = 2, LogKey = "gamedata_globaltournament_sng"},
                    new SubMenuConfig { Name = "SPINUP", PageTitle = "SPINUP", VirtualIndex = 9,
                        GameType = UserDataType.TOUR_SPINUP_GAME, UIType = 2, LogKey = "gamedata_globaltournament_spinup"},
                    new SubMenuConfig { Name = "MTT/NLH", PageTitle = "MTT/NLH", VirtualIndex = 8,
                        GameType = UserDataType.TOUR_MTT_GAME, UIType = 2, LogKey = "gamedata_globaltournament_mtt/nlh"},
                    new SubMenuConfig { Name = "MTT/PLO", PageTitle = "MTT/PLO", VirtualIndex = 16,
                        GameType = UserDataType.TOUR_PLO_GAME, UIType = 2, LogKey = "gamedata_globaltournament_mtt/plo"},
                }
            }
        };
    }
}
